package net.hn.hnms.biz.equipment.service;

import net.hn.hnms.biz.equipment.domain.dto.HisDto;
import net.hn.hnms.biz.equipment.domain.dto.NowDto;
import net.hn.hnms.biz.equipment.domain.dto.PointDto;
import net.hn.hnms.sys.common.core.domain.ResponsePage;
import net.hn.hnms.sys.common.mybatis.core.page.PageQuery;
import net.hn.hnms.biz.equipment.domain.vo.*;

import java.util.List;

public interface DrivageService {
    /**
     * 获取所属设备下拉列表
     * @return
     */
    List<String> categoryList(String mineCode);

    /**
     * 获取设备位置下拉列表
     * @return
     */
    List<String> deviceLocaltionList(String mineCode);
    /**
     * 分页条件查询实时数据
     * @param pageQuery
     * @param nowDTO
     * @return
     */
    ResponsePage<NowVo> pageNowList(PageQuery pageQuery, NowDto nowDTO);
    /**
     * 分页条件查询历史数据
     * @param pageQuery
     * @param hisDTO
     * @return
     */
    ResponsePage<HisVo> pageHistoryInfo(PageQuery pageQuery, HisDto hisDTO);

    /**
     * 报警动态
     * @return
     */
    List<DrivageNowAlarmVo> alarmNowInfo(String valueType, Integer value, String mineCode);

    /**
     * 条件查询历史数据测点曲线
     * @param pointDto
     * @return
     */
    ChartDateVo pointHistoryCurve(PointDto pointDto);

    /**
     * 条件查询历史数据测点列表
     * @param pointDto
     * @return
     */
    List<PointHistoryListVo> pointHistoryList(PointDto pointDto);
}
